技巧不求人:Multiwfn进行大体系AIM分析的寻点技巧
随着卢天老师的Multiwfn在世界范围内的流行,降低了很多波函数分析的门槛,这使得AIM(Atoms-in-Molecules)理论近年来在学术作品中越来越多被使用与提及。并且因为AIM分析得到的某些参数在定性及定量研究键强度有独特的优势,所以近年来有不少用AIM分析研究氢键的文章出现。
卢老师因为开发精力有限,将尽可能多的时间用在了开发新功能和优化软件性能上,所以对于UI界面不是很在意。对于视图操作需要通过按钮进行,并且翻转角度和放大倍数都有限制。在进行大体系AIM分析的时候,简直是灾难。动辄几百个点挤在一起难以辨认。
今天这个推文主要就是解决大体系进行AIM分析,寻点难的问题。通过各种第三方工具手段来解决这个问题。阅读本文,需要你有至少一次AIM分析的经历,千万不要刚开始学习就用大体系折磨自己。本期教程纯个人向的工作经验写成,如有不足的地方还请大家原谅。
今天的推文中的图只是一个实例,所有的图可能并不来自于同一个课题,大家只需要看好思路就行。
通常对于几百个原子的体系在进行AIM分析时候会出现下面让人抓狂的情景(仅检索了CPs from midpoint of atom pairs)
此时就算把视图放大到极限也就只能这样了,依旧是让人抓狂的点位
那么我们要怎么做才可以呢?因为我们分析的时候都是对某个区域感兴趣的,例如有明显氢键的区域,此时如果是使用Multiwfn自带的上下左右旋转功能,可能转一转眼神好的可以看到哪个点是自己需要的。但是大多数情况是转角不适合让你对应不出哪个点是你要找的BCP(Bond critical point键临界点)
此时可以按照我的方法来做:
首先,把图中的原子尺寸调整到0.3,将键粗细调整到0.02,显示出CP labels,然后调整labels的文字大小到一个不会“太乱”的大小。可以通过简单旋转来保证你要的点的label都能被看到就好了。
然后点击save picture。此处点击保存图片是因为:1.后续可以对照保存的BCP信息确定位置;2.图片的分别率是大于软件窗口直接观看的,并且可以用看图工具更大尺寸放大。如果图片的尺寸还是不够满意,可以调整Multiwfn软件settings.ini里面的graph开头的那些参数。
这样仔细辨认就可以看出那堆数字都是些什么了。
此时我们使用Show real space function values at specific CP or all CPs选项将所有的BCP点的AIM分析结果都保存出来。保存时候注意看卢老师给的提示Note 1: If input 0, then properties of all CPs will be outputted to CPprop.txt in current folder (and if you feel the output speed is slow, you can input -1 to avoid outputting ESP, which is the most expensive one)。此处我们选择-1导出,实测800个点一分钟就可以导出完毕。切记,软件关闭后,下次再进行搜点的时候点的序号可能会发生改变。所以图和保存的点位信息要在一次打开软件后完成,任务没结束就不要提前关闭软件。
保存出来打开是这样的文件,以此记录了各个点的数据
这时候我们可以看图中有哪些点在我们要找的BCP的位置,记为疑似点。
我们一般使用里面的电子密度,拉普拉斯电子密度、势能密度等数据。这里我们要关注的是position(Bohr)这一项。
BCP点应该是在两个原子的连接线上。那么我们只需要找到形成氢键的两个原子的坐标,然后再对比一下疑似点其是不是在两者连接线上就好了。
Multiwfn输出的长度单位是Bohr,这其中需要换算一下各个原子的坐标,不过这里有更简单的方法。
使用Chemcraft软件(该软件有功能受限免费版)打开同样的一个结构文件,然后点击Coord,并在出现的界面把长度单位设置为波尔,然后show swquence。
就可以找到关键部位几个原子的波尔为单位的坐标了。
如果某个疑似点的XYZ值分别都在两个原子的XYZ之间,那么就大概率是BCP点。
因为XYZ值再两个原子之间的那些点其实在空间中堆积成了一个长方体。长方体的长宽高分别对应于两个原子在XYZ坐标轴上面的投影。这也就是说还是存在两个疑似点都符合的情况。这里就需要用简单的向量知识来判断了。如果两个原子分别为AB,显然A点到BCP的向量方向应该和A点到B点的方向一样或者说基本重合,可以通过计算向量的夹角判断。(说这么多其实就是懒得去求解AB点的空间方程)
以上过程还略显笨拙,但是是不需要额外技术和知识的情况下的0门槛操作了。
其实还可以提取CPprop.txt文件中的序号和坐标信息,然后导入excel中,然后再用条件函数结合向量,以向量夹角作为标记直接穷举出BCP点。这里只是提个思路,想来用AIM分析的同仁应该都有自己的一些技巧。
如果大家有更简单高效的做法,欢迎讨论,可以在文章下留言。
做计算,学计算,请认准唯理计算
——您身边更值得信赖的计算团队
做计算,学计算,就找唯理计算,唯理计算和您在一起!
小福利:
针对模拟计算我们有专门的沟通群,想进群的小伙伴加微信
17812574221
备注:模拟计算进群
群里可以和老师一起探讨问题,老师也会帮助解答问题的哦~
推荐阅读:
课程推荐 || Gaussian软件不会用?那是因为没看这篇推文!
搜寻Gaussian资源的正确姿势,天下资源皆归我有!(未完待续)